package top.hmtools.beans.columnsInfoBeans;

/**
 * MySQL数据库表格中字段信息 <br>
 * <br>
 * TABLE_CATALOG nvarchar(128) 表限定符。 <br>
 * TABLE_SCHEMA nvarchar(128) 表所有者。 <br>
 * TABLE_NAME nvarchar(128) 表名。 <br>
 * COLUMN_NAME nvarchar(128) 列名。 <br>
 * ORDINAL_POSITION smallint 列标识号。 <br>
 * COLUMN_DEFAULT nvarchar(4000) 列的默认值。 <br>
 * IS_NULLABLE varchar(3) 列的为空性。如果列允许 NULL，那么该列返回 YES。否则，返回 NO。 <br>
 * DATA_TYPE nvarchar(128) 系统提供的数据类型。 <br>
 * CHARACTER_MAXIMUM_LENGTH smallint 以字符为单位的最大长度，适于二进制数据、字符数据，或者文本和图像数据。否则，返回
 * NULL。有关更多信息，请参见数据类型。 <br>
 * CHARACTER_OCTET_LENGTH smallint 以字节为单位的最大长度，适于二进制数据、字符数据，或者文本和图像数据。否则，返回
 * NULL。 <br>
 * NUMERIC_PRECISION tinyint 近似数字数据、精确数字数据、整型数据或货币数据的精度。否则，返回 NULL。 <br>
 * NUMERIC_PRECISION_RADIX smallint 近似数字数据、精确数字数据、整型数据或货币数据的精度基数。否则，返回 NULL。
 * <br>
 * NUMERIC_SCALE tinyint 近似数字数据、精确数字数据、整数数据或货币数据的小数位数。否则，返回 NULL。 <br>
 * DATETIME_PRECISION smallint datetime 及 SQL-92 interval 数据类型的子类型代码。对于其它数据类型，返回
 * NULL。 <br>
 * CHARACTER_SET_CATALOG varchar(6) 如果列是字符数据或 text 数据类型，那么返回
 * master，指明字符集所在的数据库。否则，返回 NULL。 <br>
 * CHARACTER_SET_SCHEMA varchar(3) 如果列是字符数据或 text 数据类型，那么返回
 * DBO，指明字符集的所有者名称。否则，返回 NULL。 <br>
 * CHARACTER_SET_NAME nvarchar(128) 如果该列是字符数据或 text 数据类型，那么为字符集返回唯一的名称。否则，返回
 * NULL。 <br>
 * COLLATION_CATALOG varchar(6) 如果列是字符数据或 text 数据类型，那么返回
 * master，指明在其中定义排序次序的数据库。否则此列为 NULL。 <br>
 * COLLATION_SCHEMA varchar(3) 返回 DBO，为字符数据或 text 数据类型指明排序次序的所有者。否则，返回 NULL。
 * <br>
 * COLLATION_NAME nvarchar(128) 如果列是字符数据或 text 数据类型，那么为排序次序返回唯一的名称。否则，返回 NULL。
 * <br>
 * DOMAIN_CATALOG nvarchar(128)
 * 如果列是一种用户定义数据类型，那么该列是某个数据库名称，在该数据库名中创建了这种用户定义数据类型。否则，返回 NULL。 <br>
 * DOMAIN_SCHEMA nvarchar(128) 如果列是一种用户定义数据类型，那么该列是这种用户定义数据类型的创建者。否则，返回 NULL。
 * <br>
 * DOMAIN_NAME nvarchar(128) 如果列是一种用户定义数据类型，那么该列是这种用户定义数据类型的名称。否则，返回 NULL。
 * 
 * @author Jianghaibo
 *
 */
public class MysqlColumnsInfoBean  extends ColumnsBaseInfoBean {

    /**
     * 
     */
    private static final long serialVersionUID = -3733026275563577187L;

    private String table_catalog;
    private String table_schema;
    private String table_name;
    private String column_name;
    private String ordinal_position;
    private String column_default;
    private String is_nullable;
    private String data_type;
    private String character_maximum_length;
    private String character_octet_length;
    private String numeric_precision;
    private String numeric_scale;
    private String character_set_name;
    private String collation_name;
    private String column_type;
    private String column_key;
    private String extra;
    private String privileges;
    private String column_comment;
	/**
	 * @return the table_catalog
	 */
	public String getTable_catalog() {
		return table_catalog;
	}
	/**
	 * @param table_catalog the table_catalog to set
	 */
	public void setTable_catalog(String table_catalog) {
		this.table_catalog = table_catalog;
	}
	/**
	 * @return the table_schema
	 */
	public String getTable_schema() {
		return table_schema;
	}
	/**
	 * @param table_schema the table_schema to set
	 */
	public void setTable_schema(String table_schema) {
		this.table_schema = table_schema;
	}
	/**
	 * @return the table_name
	 */
	public String getTable_name() {
		return table_name;
	}
	/**
	 * @param table_name the table_name to set
	 */
	public void setTable_name(String table_name) {
		this.table_name = table_name;
	}
	/**
	 * @return the column_name
	 */
	public String getColumn_name() {
		return column_name;
	}
	/**
	 * @param column_name the column_name to set
	 */
	public void setColumn_name(String column_name) {
		this.column_name = column_name;
		this.setColumnName(column_name);
	}
	/**
	 * @return the ordinal_position
	 */
	public String getOrdinal_position() {
		return ordinal_position;
	}
	/**
	 * @param ordinal_position the ordinal_position to set
	 */
	public void setOrdinal_position(String ordinal_position) {
		this.ordinal_position = ordinal_position;
	}
	/**
	 * @return the column_default
	 */
	public String getColumn_default() {
		return column_default;
	}
	/**
	 * @param column_default the column_default to set
	 */
	public void setColumn_default(String column_default) {
		this.column_default = column_default;
	}
	/**
	 * @return the is_nullable
	 */
	public String getIs_nullable() {
		return is_nullable;
	}
	/**
	 * @param is_nullable the is_nullable to set
	 */
	public void setIs_nullable(String is_nullable) {
		this.is_nullable = is_nullable;
	}
	/**
	 * @return the data_type
	 */
	public String getData_type() {
		return data_type;
	}
	/**
	 * @param data_type the data_type to set
	 */
	public void setData_type(String data_type) {
		this.data_type = data_type;
		this.setDataType(data_type);
	}
	/**
	 * @return the character_maximum_length
	 */
	public String getCharacter_maximum_length() {
		return character_maximum_length;
	}
	/**
	 * @param character_maximum_length the character_maximum_length to set
	 */
	public void setCharacter_maximum_length(String character_maximum_length) {
		this.character_maximum_length = character_maximum_length;
	}
	/**
	 * @return the character_octet_length
	 */
	public String getCharacter_octet_length() {
		return character_octet_length;
	}
	/**
	 * @param character_octet_length the character_octet_length to set
	 */
	public void setCharacter_octet_length(String character_octet_length) {
		this.character_octet_length = character_octet_length;
	}
	/**
	 * @return the numeric_precision
	 */
	public String getNumeric_precision() {
		return numeric_precision;
	}
	/**
	 * @param numeric_precision the numeric_precision to set
	 */
	public void setNumeric_precision(String numeric_precision) {
		this.numeric_precision = numeric_precision;
	}
	/**
	 * @return the numeric_scale
	 */
	public String getNumeric_scale() {
		return numeric_scale;
	}
	/**
	 * @param numeric_scale the numeric_scale to set
	 */
	public void setNumeric_scale(String numeric_scale) {
		this.numeric_scale = numeric_scale;
	}
	/**
	 * @return the character_set_name
	 */
	public String getCharacter_set_name() {
		return character_set_name;
	}
	/**
	 * @param character_set_name the character_set_name to set
	 */
	public void setCharacter_set_name(String character_set_name) {
		this.character_set_name = character_set_name;
	}
	/**
	 * @return the collation_name
	 */
	public String getCollation_name() {
		return collation_name;
	}
	/**
	 * @param collation_name the collation_name to set
	 */
	public void setCollation_name(String collation_name) {
		this.collation_name = collation_name;
	}
	/**
	 * @return the column_type
	 */
	public String getColumn_type() {
		return column_type;
	}
	/**
	 * @param column_type the column_type to set
	 */
	public void setColumn_type(String column_type) {
		this.column_type = column_type;
	}
	/**
	 * @return the column_key
	 */
	public String getColumn_key() {
		return column_key;
	}
	/**
	 * @param column_key the column_key to set
	 */
	public void setColumn_key(String column_key) {
		this.column_key = column_key;
		if("PRI".equals(column_key.trim().toUpperCase())){
			this.setPriKey(true);
		}
	}
	/**
	 * @return the extra
	 */
	public String getExtra() {
		return extra;
	}
	/**
	 * @param extra the extra to set
	 */
	public void setExtra(String extra) {
		this.extra = extra;
	}
	/**
	 * @return the privileges
	 */
	public String getPrivileges() {
		return privileges;
	}
	/**
	 * @param privileges the privileges to set
	 */
	public void setPrivileges(String privileges) {
		this.privileges = privileges;
	}
	/**
	 * @return the column_comment
	 */
	public String getColumn_comment() {
		return column_comment;
	}
	/**
	 * @param column_comment the column_comment to set
	 */
	public void setColumn_comment(String column_comment) {
		this.column_comment = column_comment;
		this.setColumnComment(column_comment);
	}

    
}
